home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fritz: All Fritz
/
All Fritz.zip
/
All Fritz
/
FILES
/
DEMOCIAL
/
DEMOFRM2.LZH
/
LIBRARY.FW2
(
.txt
)
< prev
next >
Wrap
FrameworkDocument
|
1985-10-22
|
16KB
|
372 lines
; Alt-S for Sampler Menu
@eraseprompt,
@prompt("The Framework II Sampler was written by Greg Stikeleather and David McLoughlin",2),
@beep(0,600),
@eraseprompt
eather and Davi
Library
Macros
wJ-m>
; primary Sampler control program
@Init,
@if(@memavail < 70000,
@list(
@echo(#on),
@keyfilter({ctrl-break}),
@keyfilter({Alt-S}),
@beep(500,10),@beep(500,10),
@prompt("There does not appear to be enough memory " &
"available for the Framework
II Sampler"),
@beep(0,700),
@Exit
@GetCode,
@XSmpCode,
@Clear
@Exit
{Alt-S};Start Sampler
Sampler Messages
; makes desktop appear blank
@memavail,
@display(Blank),
@Flush
Blank
*** One Moment Please ***
*** Hands On with Framework
II ***
Refer to page 14 of the Framework
II Sampler booklet for
a quick orientation to the Hands-On exercises.
During the Hands-On session, you can return to
the Sampler Menu at any time by holding down
key and pressing
Press any key to continue.
Hands
>>> Sampler Unable to Continue <<<
The Framework
II Sampler is designed to be
run from the
floppy-disk drive or
the "C"
hard-disk drive. It
appears that
all the necessary program
files
are not
available on drive "A" or "C".
For detailed instructions on how to start the
Framework
II Sampler, please refer to page 10
of the Framework
II Sampler booklet.
Press any key to quit the Sampler and return to DOS.
@iser
; Sampler program exits if necessary files aren't found on A: or C:
@keyfilter({all},exit)
@echo(#on),
@Blank,
@display(bail),
@eraseprompt,
@echo(#off),
>>> Automated Demonstration Interrupted <<<
*** One Moment Please ***
>>> Sampler Program Stopped <<<
*** Exiting to DOS ***
Sampler Functions
; maintain program control if {ctrl-break} while critical files
; aren't being deleted
@keyfilter({ctrl-break},break2),
@Back
ng deleted
Break
#TBD!
; maintain program control if {ctrl-break} while critical files
; aren't being deleted
@keyfilter({ctrl-break},break),
@Back
deleted
Break2
wR,m>
; maintain program control if {ctrl-break} while critical files
; aren't being deleted -- return to Sampler Menu
@echo(#on),
@Blank,
@beep(500,10),@beep(500,10),
@eraseprompt,
@display(Stop),
@b(300),
@clean,
@XSmpCode.Main,
@Hands on Prep
@Clear
clean,
; exit program if {ctrl-break} while critical files
; are being deleted
@keyfilter({ctrl-break},exit2),
; exit program if {ctrl-break} while critical files
; are being deleted
@keyfilter({ctrl-break},exit),
Exit2
#TRUE
; that's all folks
@Flush,
@performkeys("{esc}{esc}{esc}{esc}"),
@echo(#on),
@iserr(@unhide(Welcome)),
@iserr(@setselection("Welcome")),
@Blank,
@beep(900,10),@beep(900,10),@beep(900,10),@beep(900,10)
@eraseprompt,
@display(Bye),
@echo(#off),@b(200),
@performkeys("{ctrl-d}c{ctrl-c}e{home}{f6}{end}{del}"),
@memavail,
@Flush,
@setselection("Library"),
@performkeys("{dnlevel}{ctrl-c}e{ctrl-d}qny")
ection("Librar
#FUNCTION
; pause routine, no prompt
@memavail,
@beep(0,@item1),
@Flush
#FALSE
; prompt used during set-up activity
@eraseprompt,
@prompt("One Moment Please...",31),
@Flush
#N/A!
; delete all unnecessary files from desktop
@memavail,
@Flush,
@performkeys("{esc}{esc}{esc}{esc}"),
@iserr(@unhide(Welcome)),
@memavail,
@Blank,
@echo(#off),
@iserr(@hide(Welcome)),
@memavail,
@Flush,
@performkeys("{ctrl-d}c{ctrl-c}e{home}{f6}{end}{del}"),
@memavail,
@iserr(@unhide(Welcome)),
@memavail,
@iserr(@setselection("Welcome")),
@echo(#on)
@mema
Clean
#FALSE
; flush undesired keystrokes from keyboard buffer
@while(@nextkey(0)<>{null},)
rom keyboard b
Flush
#N/A!
; execute text performkeys one letter at a time
@local(cnt,len),
cnt := 1,
len := @len(@item1),
@while(cnt<=len,
@Flush,
@performkeys(@mid(@item1,cnt,1)),
cnt := cnt+1
Oneltr
#FUNCTION
; repeat the same keystroke slowly - @Rptkey(#,{keyname},dur)
@local(cnt),
cnt := 1,
@while(cnt<=@item1,
@Flush,
@performkeys(@item2),
@b(@item3),
cnt := cnt+1
Rptkey
#N/A!
; position frame on desktop - @Pos("framename",col,row)
@local(C,c1,c2,R,r1,r2),
@setselection(@item1),
C := @item2 - 1,
R := @item3 - 1,
@if(C < 0,C := 0),
@if(C > 77,C := 77),
@if(R < 0,R := 0),
@if(R > 18,R := 18),
c1 := @integer(@floor(C/8)),
c2 := @integer(@mod(C,8)),
r1 := @integer(@floor(R/4)),
r2 := @integer(@mod(R,4)),
@Flush,
@performkeys("{f3}{ctrl-home}" &
"{ctrl-"& c1 &"}{ctrl-rightarrow}" &
"{ctrl-"& c2 &"}{rightarrow}" &
"{ctrl-"& r1 &"}{ctrl-dnarrow}" &
"{ctrl-"& r2 &"}{dnarrow}" &
"{return}{return}"),
@Flush
"{ctrl-"&
#N/A!
; size frame on desktop - @Size("framename",width,height)
@local(W,w1,w2,H,h1,h2),
@setselection(@item1),
W := @item2 - 1,
@if(@frametype = 6,
H := @item3 - 3,
H := @item3 - 1
@if(W < 0,W := 0),
@if(W > 77,W := 77),
@if(H < 0,H := 0),
@if(H > 18,H := 18),
w1 := @integer(@floor(W/8)),
w2 := @integer(@mod(W,8)),
h1 := @integer(@floor(H/4)),
h2 := @integer(@mod(H,4)),
@Flush,
@performkeys("{f4}{ctrl-home}" &
"{ctrl-"& w1 &"}{ctrl-rightarrow}" &
"{ctrl-"& w2 &"}{rightarrow}" &
"{ctrl-"& h1 &"}{ctrl-dnarrow}" &
"{ctrl-"& h2 &"}{dnarrow}" &
"{return}{return}"),
@Flush
#FUNZ
#FUNCTION
; create placeholder tray on desktop - @Sham("name for frame")
@memavail,
@performkeys("{ctrl-uplevel}{ctrl-c}e"& @item1 & "{return}{return}")
@perfo
319680
; initialize Framework
II environment for Sampler program
@keyfilter({ctrl-break},Exit),
@keyfilter({Alt-S},Stop),
@Flush,
@performkeys("{esc}{esc}{esc}{esc}"),
@iserr(@unhide(XStart)),
@iserr(@setselection("XStart")),
@Blank,
@eraseprompt,
@prompt("Framework II Sampler, Copyright (c) Ashton-Tate 1985",15),
@display(Hold),
@echo(#off),
@iserr(@hide(XStart)),
@iserr(@setselection("a:")),
@memavail,
@Flush,
@performkeys("{ctrl-d}c{ctrl-c}e{home}{f6}{end}{del}"),
@memavail,
@iserr(@setselection("a:")),
@Flush,
; --- create frame to keep cursor from bleeding through menu
@performkeys("{ctrl-c}eWelcome{return}{ctrl-f}d{ctrl-f}h{f4}" &
"{ctrl-home}{leftarrow}{f3}{ctrl-home}{end}{uparrow}" &
"{leftarrow}{leftarrow}{leftarrow}{leftarrow}{return}" &
"{dnlevel}
{ctrl-home}{uplevel}"),
@if(@sense(#ET),@performkeys("{ctrl-e}t")),
@if(@sense(#ED),@performkeys("{ctrl-e}d")),
@if(@sense(#LF),@performkeys("{ctrl-l}f")),
@if(@not(@sense(#LL)),@performkeys("{ctrl-l}l")),
@if(@not(@sense(#LC)),@performkeys("{ctrl-l}c")),
@memavail
#N/A!
; load XSMPCODE.FW2 from disk
@echo(#off),
@iserr(#FALSE),
@memavail,
@Flush,
@if(@setdrive="B:",
@performkeys("{ctrl-d}ga:XSmpCode.fw2{return}"),
@performkeys("{ctrl-d}gXSmpCode.fw2{return}")
@if(@iserr(
@setselection("XSmpCode")
@list(
@performkeys("{ctrl-d}gc:XSmpCode.fw2{return}"),
@if(@iserr(
@setselection("XSmpCode")
@list(
@performkeys("{ctrl-d}ga:XSmpCode.fw2{return}"),
@if(@iserr(
@setselection("XSmpCode")
@bail,
@setdrive("A:")
)
),
@setdrive("C:")
@if(@setdrive="B:",
@setdrive("A:")
@iserr(@hide(XSmpCode)),
@memavail
GetCode
#N/A!
; load XSMPFILE.FW2 from disk, hide files on hidden desktop
@echo(#off),
@memavail,
@Flush,
XSmpCode.rtn := #false,
@iserr(#FALSE),
@performkeys("{ctrl-d}gXSmpFile.fw2{return}"),
@if(@iserr(
@setselection("XSmpFile")
@bail
@performkeys("{dnlevel}{home}{f6}{end}" &
"{f7}{uplevel}{return}{ctrl-d}c"),
@memavail,
@Flush,
@performkeys("{ctrl-d}g{f6}{end}{del}{return}"),
@memavail,
@setselection("Welcome"),
@performkeys("{return}"),
@setselection("XSmpFile"),
@performkeys("{del}"),
@memavail,
@hide(XSmpCode),
@memavail,
@hide(Costs),@hide(Budget),@hide(Summary),
@memavail,
@keyfilter({ctrl-break},break)
Summary),
GetFiles
#N/A!
; unhide and delete all Sample Files except Summary and Budget
@keyfilter({ctrl-break},Exit),
@iserr(@unhide(Welcome)),
@iserr(@setselection("Welcome")),
@Blank,
@display(Hold),
@echo(#off),
@setselection("Library"),
@iserr(@unhide(Costs)),
@iserr(@unhide(Report)),
@memavail,
@performkeys("{home}{f6}{end}{del}"),
@memavail,
@iserr(@unhide(Budget)),
@memavail,
@iserr(@pos("Budget",1,1)),
@iserr(@size("Budget",70,6)),
@iserr(@unhide(Summary)),
@memavail,
@iserr(@pos("Summary",1,3)),
@iserr(@size("Summary",70,7)),
@performkeys("{ctrl-d}c{ctrl-c}{home}{dnarrow}{esc}")
Hands On Prep
wJ-m>x
; unhide and delete Sampler code for Hands-On
@setselection("Library"),
@iserr(@unhide(XSmpCode)),
@iserr(@setselection("XSmpCode")),
@performkeys("{del}"),
@memavail,
@setselection("Library"),
@performkeys("{dnarrow}{scroll-lock}"),
@setselection("Budget"),
@Flush,
@echo(#on),
@display(Hands),
@keyfilter({ctrl-break}),
@eraseprompt,
@Flush,
@nextkey,
@Echo(#on),
@keyfilter({Alt-S})
Clear